<layout name="layout" />

<div class="main-div">
    <form name="main_form" method="POST" action="__SELF__" enctype="multipart/form-data" >
    	<input type="hidden" name="id" value="<?php echo $data['id']; ?>" />
        <table cellspacing="1" cellpadding="3" width="100%">
            <tr>
                <td class="label">用户名：</td>
                <td>
                    <input  type="text" name="username" value="<?php echo $data['username']; ?>" />
                </td>
            </tr>
            <tr>
                <td class="label">密码：</td>
                <td>
                    <input type="password" size="25" name="password" />
                    密码留空，代表不修改密码
                </td>
            </tr>
            <tr>
                <td class="label">确认密码：</td>
                <td>
                    <input type="password" size="25" name="cpassword" />
                </td>
            </tr>
            <?php if($data['id'] > 1): ?>
            <tr>
                <td class="label">状态：</td>
                <td>
                	<input type="radio" name="status" value="正常" <?php if($data['status'] == '正常') echo 'checked="checked"'; ?> />正常 
                	<input type="radio" name="status" value="禁用" <?php if($data['status'] == '禁用') echo 'checked="checked"'; ?> />禁用 
                </td>
            </tr>
            <?php endif; ?>
            <tr>
                <td class="label">所在角色：</td>
                    <td>
			        <?php foreach ($roleData as $k => $v): 
			        	/**
			        	 * 如何判断一个字符是否在一个字符串中，比如：1 是否在  2,3,4,5,6,12,13,15,16
			        	 * 解决办法： 应该判断,1, 是否在 ,2,3,4,5,6,12,13,15,16,
			        	 */
			        		if(  strpos(','.$rids.',', ','.$v['id'].',') !== FALSE )
			        			$check = 'checked="checked"';
			        		else 
			        			$check = '';
			        ?>
				    	<input <?php echo $check; ?> value="<?php echo $v['id']; ?>" type="checkbox" name="role_id[]" /> <?php echo $v['role_name']; ?>
			        <?php endforeach; ?>
			        </ul>
                    </td>
                </tr>
            <tr>
                <td class="label">可以管理的商品分类：</td>
                    <td>
                    <ul>
			        <?php foreach ($catData as $k => $v): 
			        		if(  strpos(','.$cids.',', ','.$v['id'].',') !== FALSE )
			        			$check = 'checked="checked"';
			        		else 
			        			$check = '';
			        ?>
			        	<li>
				        	<?php echo str_repeat('-', $v['level']*8); ?><input <?php echo $check; ?> level="<?php echo $v['level']; ?>" value="<?php echo $v['id']; ?>" type="checkbox" name="cat_id[]" /> <a level="<?php echo $v['level']; ?>" href="javascript:void(0);">[-]</a> <?php echo $v['cat_name']; ?>
			        	</li>
			        <?php endforeach; ?>
			        </ul>
                    </td>
                </tr>
            <tr>
                <td colspan="99" align="center">
                    <input type="submit" class="button" value=" 确定 " />
                    <input type="reset" class="button" value=" 重置 " />
                </td>
            </tr>
        </table>
    </form>
</div>

<script>
$(":checkbox").click(function(){
	// 所在的li
	var li = $(this).parent();
	// 先取当前的level
	var level = $(this).attr("level");
	// 判断是选中还是取消
	if($(this).attr("checked"))
	{
		// 循环后面的每一个
		li.nextAll("li").each(function(k,v){
			// 判断如果level大就说明是子权限
			if($(v).find(":checkbox").attr("level") > level)
				$(v).find(":checkbox").attr("checked", "checked");
			else
				return false;  // 退出循环，后面的不用再判断了
		});
		var tmp_level = level;  // 复制一个level值
		// 循环前面的每一个
		li.prevAll("li").each(function(k,v){
			// 判断如果level大就说明是子权限
			if($(v).find(":checkbox").attr("level") < tmp_level)
			{
				$(v).find(":checkbox").attr("checked", "checked");
				tmp_level--;   // 每找到一个上级就再向前提一级
			}
		});
	}
	else
	{
		li.nextAll("li").each(function(k,v){
			// 判断如果level大就说明是子权限
			if($(v).find(":checkbox").attr("level") > level)
				$(v).find(":checkbox").removeAttr("checked");
			else
				return false;  // 退出循环，后面的不用再判断了
		});
	}
});

$("a").click(function(){
	var li = $(this).parent();
	// 获取是第几级的
	var level = $(this).attr("level");
	if($(this).text() == '[+]')
	{
		$(this).text('[-]');
		li.nextAll("li").each(function(k,v){
			// 判断如果level大就说明是子权限
			if($(v).find(":checkbox").attr("level") > level)
			{
				$(v).find("a").text('[-]');
				$(v).show();
			}
			else
				return false;  // 退出循环，后面的不用再判断了
		});
	}
	else
	{
		$(this).text('[+]');
		// 把所有的子权限折叠
		li.nextAll("li").each(function(k,v){
			// 判断如果level大就说明是子权限
			if($(v).find(":checkbox").attr("level") > level)
				$(v).hide();
			else
				return false;  // 退出循环，后面的不用再判断了
		});
	}
});
</script>